package Pacote1;

import grails.test.*
import les.*

class CrudEventoTests extends functionaltestplugin.FunctionalTestCase {
	
	void testFluxoPrincipal() {
		get ("/usuario/login")
		
		form() {
			email = "jota@gmail.com"
			senha = "123456"
			click "entrar"
		}
		
		redirectEnabled = false
		get ("/evento/create")
		
		
		form() {
			
			nome = "teste"
			local = "teste"
			detalhes = "bla bla bla"
			click "create"
			
		}
		
		assertRedirectUrlContains "/evento/show"
		followRedirect()
		redirectEnabled = true
		
		assertContentContains "Evento criado(a) com sucesso"
		assertContentContainsStrict "<td valign=\"top\" class=\"name\">Nome</td>"
		assertContentContainsStrict "<td valign=\"top\" class=\"value\">teste</td>"
	}
	
	//Fluxo alternativo 1
	void testSemNome() {
		get ("/usuario/login")
		
		form() {
			email = "jota@gmail.com"
			senha = "123456"
			click "entrar"
		}
		
		get ("/evento/create")
		
		form() {
			local = "teste"
			click "create"
		}
		
		assertContentContains "O campo nome n&atilde;o pode ficar em branco";
	}
	
	//Fluxo alternativo 2
	void testSemLocal(){
		get ("/usuario/login")
		
		form() {
			email = "jota@gmail.com"
			senha = "123456"
			click "entrar"
		}
		
		redirectEnabled = false
		get ("/evento/create")
		
		form() {
			nome = "teste"
			click "create"
		}
		
		assertContentContains "O campo local n&atilde;o pode ficar em branco";
	}
	
	
	
}